]> git.openstreetmap.org Git - rails.git/blobdiff - app/controllers/notes_controller.rb
Reject note comments with no text
[rails.git] / app / controllers / notes_controller.rb
index a7fa03ac7e94e076eaf133099581c807018c522b..e470bdbea3dd0599c69e43ca110411a01fa27125 100644 (file)
@@ -84,7 +84,7 @@ class NotesController < ApplicationController
   def comment
     # Check the arguments are sane
     raise OSM::APIBadUserInput.new("No id was given") unless params[:id]
-    raise OSM::APIBadUserInput.new("No text was given") unless params[:text]
+    raise OSM::APIBadUserInput.new("No text was given") if params[:text].blank?
 
     # Extract the arguments
     id = params[:id].to_i
@@ -94,6 +94,7 @@ class NotesController < ApplicationController
     @note = Note.find(id)
     raise OSM::APINotFoundError unless @note
     raise OSM::APIAlreadyDeletedError.new("note", @note.id) unless @note.visible?
+    raise OSM::APINoteAlreadyClosedError.new(@note) if @note.closed?
 
     # Add a comment to the note
     Note.transaction do
@@ -121,6 +122,7 @@ class NotesController < ApplicationController
     @note = Note.find_by_id(id)
     raise OSM::APINotFoundError unless @note
     raise OSM::APIAlreadyDeletedError.new("note", @note.id) unless @note.visible?
+    raise OSM::APINoteAlreadyClosedError.new(@note) if @note.closed?
 
     # Close the note and add a comment
     Note.transaction do