diff options
author | BaldinoF <baldinof@gmail.com> | 2016-04-17 18:17:27 +0200 |
---|---|---|
committer | BaldinoF <baldinof@gmail.com> | 2016-04-17 18:17:27 +0200 |
commit | b04140a1e497c75a721bc4e5458907bf35a0a8b9 (patch) | |
tree | 8005646150e1c6979061e56a30f661b18ec331c7 /lib/api/notes.rb | |
parent | 3918fce5bd073e18addb7d1d4aaf3c81ce8150b0 (diff) | |
parent | 5048064dc5e7ca30f65209c7ccd9fb90f9ac49db (diff) | |
download | gitlab-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.rb | 22 |
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 |