[70805] branches/gsoc10-mpwa/mpwa
jrozner at macports.org
jrozner at macports.org
Sat Aug 21 15:40:47 PDT 2010
Revision: 70805
http://trac.macports.org/changeset/70805
Author: jrozner at macports.org
Date: 2010-08-21 15:40:47 -0700 (Sat, 21 Aug 2010)
Log Message:
-----------
Fixed redirect for comments and cache expiring
Modified Paths:
--------------
branches/gsoc10-mpwa/mpwa/app/controllers/categories_controller.rb
branches/gsoc10-mpwa/mpwa/app/controllers/comments_controller.rb
branches/gsoc10-mpwa/mpwa/app/controllers/ports_controller.rb
branches/gsoc10-mpwa/mpwa/app/sweepers/category_sweeper.rb
branches/gsoc10-mpwa/mpwa/app/sweepers/port_sweeper.rb
branches/gsoc10-mpwa/mpwa/app/sweepers/ticket_sweeper.rb
branches/gsoc10-mpwa/mpwa/app/views/ports/show.html.erb
branches/gsoc10-mpwa/mpwa/config/routes.rb
Added Paths:
-----------
branches/gsoc10-mpwa/mpwa/app/sweepers/comment_sweeper.rb
Modified: branches/gsoc10-mpwa/mpwa/app/controllers/categories_controller.rb
===================================================================
--- branches/gsoc10-mpwa/mpwa/app/controllers/categories_controller.rb 2010-08-21 22:32:44 UTC (rev 70804)
+++ branches/gsoc10-mpwa/mpwa/app/controllers/categories_controller.rb 2010-08-21 22:40:47 UTC (rev 70805)
@@ -1,5 +1,6 @@
class CategoriesController < ApplicationController
caches_page :index
+ cache_sweeper :category_sweeper, :only => [:create, :update, :destroy]
def index
@categories = Category.all(:order => 'name ASC')
Modified: branches/gsoc10-mpwa/mpwa/app/controllers/comments_controller.rb
===================================================================
--- branches/gsoc10-mpwa/mpwa/app/controllers/comments_controller.rb 2010-08-21 22:32:44 UTC (rev 70804)
+++ branches/gsoc10-mpwa/mpwa/app/controllers/comments_controller.rb 2010-08-21 22:40:47 UTC (rev 70805)
@@ -1,7 +1,5 @@
class CommentsController < ApplicationController
- def edit
- @comment = Port.find(params[:port_id]).comments.find(params[:id])
- end
+ cache_sweeper :comment_sweeper, :only => [:create]
def create
@comment = Port.find(params[:port_id]).comments.build(params[:comment])
@@ -9,27 +7,15 @@
respond_to do |format|
if verify_recaptcha
if @comment.save
- format.html { redirect_to @comment.port }
+ format.html { redirect_to category_port_path(@comment.port.category, @comment.port) }
end
else
flash[:error] = "There was an error with the recaptcha code below. Please re-enter the code and click submit."
- format.html { redirect_to @comment.port }
+ format.html { redirect_to category_port_path(@comment.port.category, @comment.port) }
end
end
end
- def update
- @comment = Port.find(params[:port_id]).comments.find(params[:id])
-
- respond_to do |format|
- if @comment.update_attributes(params[:comment])
- format.html { redirect_to(@comment.port, :notice => 'Comment was successfully updated.') }
- else
- format.html { render :action => "edit" }
- end
- end
- end
-
def destroy
@comment = Port.find(params[:port_id]).comments.find(params[:id])
@comment.destroy
Modified: branches/gsoc10-mpwa/mpwa/app/controllers/ports_controller.rb
===================================================================
--- branches/gsoc10-mpwa/mpwa/app/controllers/ports_controller.rb 2010-08-21 22:32:44 UTC (rev 70804)
+++ branches/gsoc10-mpwa/mpwa/app/controllers/ports_controller.rb 2010-08-21 22:40:47 UTC (rev 70805)
@@ -1,5 +1,6 @@
class PortsController < ApplicationController
caches_page :index, :show
+ cache_sweeper :port_sweeper, :only => [:create, :update, :destroy]
def index
unless params[:category_id].nil?
Modified: branches/gsoc10-mpwa/mpwa/app/sweepers/category_sweeper.rb
===================================================================
--- branches/gsoc10-mpwa/mpwa/app/sweepers/category_sweeper.rb 2010-08-21 22:32:44 UTC (rev 70804)
+++ branches/gsoc10-mpwa/mpwa/app/sweepers/category_sweeper.rb 2010-08-21 22:40:47 UTC (rev 70805)
@@ -15,6 +15,7 @@
private
def expire_cache_for(category)
- expire_page :action => :index
+ expire_page categories_path
+ expire_page category_path(category)
end
end
\ No newline at end of file
Added: branches/gsoc10-mpwa/mpwa/app/sweepers/comment_sweeper.rb
===================================================================
--- branches/gsoc10-mpwa/mpwa/app/sweepers/comment_sweeper.rb (rev 0)
+++ branches/gsoc10-mpwa/mpwa/app/sweepers/comment_sweeper.rb 2010-08-21 22:40:47 UTC (rev 70805)
@@ -0,0 +1,12 @@
+class CommentSweeper < ActionController::Caching::Sweeper
+ observe Comment
+
+ def after_create(comment)
+ expire_cache_for comment
+ end
+
+private
+ def expire_cache_for(comment)
+ expire_page category_port_path(comment.port.category, comment.port)
+ end
+end
\ No newline at end of file
Modified: branches/gsoc10-mpwa/mpwa/app/sweepers/port_sweeper.rb
===================================================================
--- branches/gsoc10-mpwa/mpwa/app/sweepers/port_sweeper.rb 2010-08-21 22:32:44 UTC (rev 70804)
+++ branches/gsoc10-mpwa/mpwa/app/sweepers/port_sweeper.rb 2010-08-21 22:40:47 UTC (rev 70805)
@@ -15,7 +15,7 @@
private
def expire_cache_for(port)
- expire_page :action => :index
- expire_page :action => :show
+ expire_page category_ports_path(port.category)
+ expire_page category_port_path(port.category, port)
end
end
\ No newline at end of file
Modified: branches/gsoc10-mpwa/mpwa/app/sweepers/ticket_sweeper.rb
===================================================================
--- branches/gsoc10-mpwa/mpwa/app/sweepers/ticket_sweeper.rb 2010-08-21 22:32:44 UTC (rev 70804)
+++ branches/gsoc10-mpwa/mpwa/app/sweepers/ticket_sweeper.rb 2010-08-21 22:40:47 UTC (rev 70805)
@@ -2,20 +2,19 @@
observe Ticket
def after_create(ticket)
- expire_cache_for ticket.port
+ expire_cache_for ticket
end
def after_update(ticket)
- expire_cache_for ticket.port
+ expire_cache_for ticket
end
def after_destroy(ticket)
- expire_cache_for ticket.port
+ expire_cache_for ticket
end
private
def expire_cache_for(ticket)
- expire_page :controller => :port, :action => :index
- expire_page :controller => :port, :action => :show
+ expire_page category_port_path(ticket.port.category, ticket.port)
end
end
\ No newline at end of file
Modified: branches/gsoc10-mpwa/mpwa/app/views/ports/show.html.erb
===================================================================
--- branches/gsoc10-mpwa/mpwa/app/views/ports/show.html.erb 2010-08-21 22:32:44 UTC (rev 70804)
+++ branches/gsoc10-mpwa/mpwa/app/views/ports/show.html.erb 2010-08-21 22:40:47 UTC (rev 70805)
@@ -43,21 +43,6 @@
<strong>Portfile:</strong> <%= link_to "#{@port.path}/Portfile", "#{$svn_url}/trunk/dports/#{@port.path}/Portfile" %>
</p>
- <% form_for([@port.category, @port, @comment]) do |f| %>
- <%= f.error_messages %>
-
- <p>
- <%= f.label :body, "<strong>Comment</strong>" %><br />
- <%= f.text_area :body, {:rows => 5, :cols => 80} %>
- </p>
- <p>
- <%= recaptcha_tags :display => {:theme => 'clean'} %>
- </p>
- <p>
- <%= f.submit 'Create' %>
- </p>
- <% end %>
-
<div>
<h3>Open Tickets</h3>
<ul>
@@ -67,8 +52,26 @@
</ul>
</div>
- <% @port.comments.each do |comment| %>
- <div><%= h comment.body %></div>
- <% end %>
+ <div>
+ <h3>Comments</h3>
+ <% form_for([@port.category, @port, @comment]) do |f| %>
+ <%= f.error_messages %>
-</div>
+ <p>
+ <%= f.label :body, "<strong>Comment</strong>" %><br />
+ <%= f.text_area :body, {:rows => 5, :cols => 80} %>
+ </p>
+ <p>
+ <%= recaptcha_tags :display => {:theme => 'clean'} %>
+ </p>
+ <p>
+ <%= f.submit 'Create' %>
+ </p>
+ <% end %>
+
+ <% @port.comments.each do |comment| %>
+ <div><%= h comment.body %></div>
+ <% end %>
+ </div>
+
+</div>
\ No newline at end of file
Modified: branches/gsoc10-mpwa/mpwa/config/routes.rb
===================================================================
--- branches/gsoc10-mpwa/mpwa/config/routes.rb 2010-08-21 22:32:44 UTC (rev 70804)
+++ branches/gsoc10-mpwa/mpwa/config/routes.rb 2010-08-21 22:40:47 UTC (rev 70805)
@@ -1,7 +1,7 @@
ActionController::Routing::Routes.draw do |map|
map.resources :categories, :only => [:index] do |category|
category.resources :ports, :only => [:index, :show] do |port|
- port.resources :comments, :except => [:index, :show, :new]
+ port.resources :comments, :only => [:new, :create]
end
category.connect '/ports/page/:page', :controller => :ports, :action => :index, :page => :page
end
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20100821/f5f16c5a/attachment.html>
More information about the macports-changes
mailing list