BaseContext
Controllers refactoring with contexts Move commit compare logic to model
This commit is contained in:
parent
3c6daec4b1
commit
3063af5adc
11 changed files with 130 additions and 62 deletions
30
app/contexts/notes_load.rb
Normal file
30
app/contexts/notes_load.rb
Normal file
|
@ -0,0 +1,30 @@
|
|||
class NotesLoad < BaseContext
|
||||
def execute
|
||||
target_type = params[:target_type]
|
||||
target_id = params[:target_id]
|
||||
first_id = params[:first_id]
|
||||
last_id = params[:last_id]
|
||||
|
||||
|
||||
@notes = case target_type
|
||||
when "commit"
|
||||
then project.commit_notes(project.commit(target_id)).fresh.limit(20)
|
||||
when "snippet"
|
||||
then project.snippets.find(target_id).notes
|
||||
when "wall"
|
||||
then project.common_notes.order("created_at DESC").fresh.limit(50)
|
||||
when "issue"
|
||||
then project.issues.find(target_id).notes.inc_author.order("created_at DESC").limit(20)
|
||||
when "merge_request"
|
||||
then project.merge_requests.find(target_id).notes.inc_author.order("created_at DESC").limit(20)
|
||||
end
|
||||
|
||||
@notes = if last_id
|
||||
@notes.where("id > ?", last_id)
|
||||
elsif first_id
|
||||
@notes.where("id < ?", first_id)
|
||||
else
|
||||
@notes
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Add table
Add a link
Reference in a new issue