]> git.openstreetmap.org Git - rails.git/blobdiff - app/controllers/redactions_controller.rb
Merge remote-tracking branch 'upstream/pull/2499'
[rails.git] / app / controllers / redactions_controller.rb
index d0f90271744661ed8447d88a7a30cc871eeed649..45a41058c04f77cc785775060e30a4663777a9d4 100644 (file)
@@ -1,13 +1,14 @@
 class RedactionsController < ApplicationController
-  layout 'site'
-  
-  before_filter :authorize_web
-  before_filter :set_locale
-  before_filter :require_user, :only => [:new, :create, :edit, :update, :destroy]
-  before_filter :require_moderator, :only => [:new, :create, :edit, :update, :destroy]
-  before_filter :lookup_redaction, :only => [:show, :edit, :update, :destroy]
-  before_filter :check_database_readable
-  before_filter :check_database_writable, :only => [:create, :update, :destroy]
+  layout "site"
+
+  before_action :authorize_web
+  before_action :set_locale
+
+  authorize_resource
+
+  before_action :lookup_redaction, :only => [:show, :edit, :update, :destroy]
+  before_action :check_database_readable
+  before_action :check_database_writable, :only => [:create, :update, :destroy]
 
   def index
     @redactions = Redaction.order(:id)
@@ -16,55 +17,53 @@ class RedactionsController < ApplicationController
   def new
     @redaction = Redaction.new
   end
-     
+
   def create
     @redaction = Redaction.new
-    @redaction.user = @user
+    @redaction.user = current_user
     @redaction.title = params[:redaction][:title]
     @redaction.description = params[:redaction][:description]
     # note that the description format will default to 'markdown'
 
     if @redaction.save
-      flash[:notice] = t('redaction.create.flash')
+      flash[:notice] = t(".flash")
       redirect_to @redaction
     else
-      render :action => 'new'
+      render :action => "new"
     end
   end
-     
-  def show
-  end
-  
-  def edit
-  end
-     
+
+  def show; end
+
+  def edit; end
+
   def update
     # note - don't update the user ID
     @redaction.title = params[:redaction][:title]
     @redaction.description = params[:redaction][:description]
 
     if @redaction.save
-      flash[:notice] = t('redaction.update.flash')
+      flash[:notice] = t(".flash")
       redirect_to @redaction
     else
-      render :action => 'edit'
+      render :action => "edit"
     end
   end
-     
+
   def destroy
-    unless @redaction.old_nodes.empty? and
-        @redaction.old_ways.empty? and
-        @redaction.old_relations.empty?
-      flash[:error] = t('redaction.destroy.not_empty')
-      redirect_to @redaction
-    else
+    if @redaction.old_nodes.empty? &&
+       @redaction.old_ways.empty? &&
+       @redaction.old_relations.empty?
       if @redaction.destroy
-        flash[:notice] = t('redaction.destroy.flash')
+        flash[:notice] = t(".flash")
         redirect_to :redactions
       else
-        flash[:error] = t('redaction.destroy.error')
+        flash[:error] = t(".error")
         redirect_to @redaction
       end
+    else
+      flash[:error] = t(".not_empty")
+      redirect_to @redaction
     end
   end