Impoved merge requests show page. Minor style improvements across project

This commit is contained in:
Dmitriy Zaporozhets 2012-03-16 01:45:46 +02:00
parent e2b3951700
commit 2ec12c9bb8
13 changed files with 101 additions and 70 deletions

View file

@ -41,12 +41,21 @@ class MergeRequest < ActiveRecord::Base
where("title like :query", :query => "%#{query}%")
end
def self.find_all_by_branch(branch_name)
where("source_branch like :branch or target_branch like :branch", :branch => branch_name)
end
def validate_branches
if target_branch == source_branch
errors.add :base, "You can not use same branch for source and target branches"
end
end
def reload_code
self.reloaded_commits
self.reloaded_diffs
end
def new?
today? && created_at == updated_at
end
@ -72,10 +81,19 @@ class MergeRequest < ActiveRecord::Base
commits.first
end
def merged?
merged && merge_event
end
def merge_event
self.project.events.where(:target_id => self.id, :target_type => "MergeRequest", :action => Event::Merged).last
end
def closed_event
self.project.events.where(:target_id => self.id, :target_type => "MergeRequest", :action => Event::Closed).last
end
# Return the number of +1 comments (upvotes)
def upvotes
notes.select(&:upvote?).size
@ -115,6 +133,17 @@ class MergeRequest < ActiveRecord::Base
sort_by(&:created_at).
reverse
end
def merge!(user_id)
self.mark_as_merged!
Event.create(
:project => self.project,
:action => Event::Merged,
:target_id => self.id,
:target_type => "MergeRequest",
:author_id => user_id
)
end
end
# == Schema Information
#