summaryrefslogtreecommitdiff
path: root/lib/api/notes.rb
diff options
context:
space:
mode:
authorBaldinoF <baldinof@gmail.com>2016-04-17 18:17:27 +0200
committerBaldinoF <baldinof@gmail.com>2016-04-17 18:17:27 +0200
commitb04140a1e497c75a721bc4e5458907bf35a0a8b9 (patch)
tree8005646150e1c6979061e56a30f661b18ec331c7 /lib/api/notes.rb
parent3918fce5bd073e18addb7d1d4aaf3c81ce8150b0 (diff)
parent5048064dc5e7ca30f65209c7ccd9fb90f9ac49db (diff)
downloadgitlab-ce-b04140a1e497c75a721bc4e5458907bf35a0a8b9.tar.gz
Merge branch 'master' into number_sign_for_external_issue_ref
Diffstat (limited to 'lib/api/notes.rb')
-rw-r--r--lib/api/notes.rb22
1 files changed, 22 insertions, 0 deletions
diff --git a/lib/api/notes.rb b/lib/api/notes.rb
index 174473f5371..71a53e6f0d6 100644
--- a/lib/api/notes.rb
+++ b/lib/api/notes.rb
@@ -61,6 +61,7 @@ module API
# id (required) - The ID of a project
# noteable_id (required) - The ID of an issue or snippet
# body (required) - The content of a note
+ # created_at (optional) - The date
# Example Request:
# POST /projects/:id/issues/:noteable_id/notes
# POST /projects/:id/snippets/:noteable_id/notes
@@ -73,6 +74,10 @@ module API
noteable_id: params[noteable_id_str]
}
+ if params[:created_at] && (current_user.is_admin? || user_project.owner == current_user)
+ opts[:created_at] = params[:created_at]
+ end
+
@note = ::Notes::CreateService.new(user_project, current_user, opts).execute
if @note.valid?
@@ -112,6 +117,23 @@ module API
end
end
+ # Delete a +noteable+ note
+ #
+ # Parameters:
+ # id (required) - The ID of a project
+ # noteable_id (required) - The ID of an issue, MR, or snippet
+ # node_id (required) - The ID of a note
+ # Example Request:
+ # DELETE /projects/:id/issues/:noteable_id/notes/:note_id
+ # DELETE /projects/:id/snippets/:noteable_id/notes/:node_id
+ delete ":id/#{noteables_str}/:#{noteable_id_str}/notes/:note_id" do
+ note = user_project.notes.find(params[:note_id])
+ authorize! :admin_note, note
+
+ ::Notes::DeleteService.new(user_project, current_user).execute(note)
+
+ present note, with: Entities::Note
+ end
end
end
end