X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/851de28303fc9c24d095b9452b862bea618ec0da..2d18a802ef32c056522f2cef668f8be0ab04450e:/app/controllers/redactions_controller.rb diff --git a/app/controllers/redactions_controller.rb b/app/controllers/redactions_controller.rb index 201f1883f..6e28f3625 100644 --- a/app/controllers/redactions_controller.rb +++ b/app/controllers/redactions_controller.rb @@ -1,78 +1,69 @@ 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_pages, @redactions = paginate(:redactions, :order => :id, :per_page => 10) + @redactions = Redaction.order(:id) end + def show; end + def new @redaction = Redaction.new end - + + def edit; end + def create @redaction = Redaction.new - @redaction.user_id = @user.id + @redaction.user = current_user @redaction.title = params[:redaction][:title] @redaction.description = params[:redaction][:description] - # didn't see this come in from the form - maybe i'm doing something - # wrong, or markdown is the only thing supported at the moment? - @redaction.description_format = 'markdown' + # NOTE: 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 update - # note - don't update the user ID - - if params[:redaction][:title] and params[:redaction][:title] != @redaction.title - @redaction.title = params[:redaction][:title] - end - if params[:redaction][:description] and params[:redaction][:description] != @redaction.description - @redaction.description = params[:redaction][:description] - 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') - redirect_to :index + 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