summaryrefslogtreecommitdiff
path: root/app/models/fork_network.rb
blob: 7f1728e8c772ba76555cfa5ca0d6aae1c6ad56de (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class ForkNetwork < ActiveRecord::Base
  belongs_to :root_project, class_name: 'Project'
  has_many :fork_network_members
  has_many :projects, through: :fork_network_members

  after_create :add_root_as_member, if: :root_project

  def add_root_as_member
    projects << root_project
  end

  def find_forks_in(other_projects)
    projects.where(id: other_projects)
  end

  def merge_requests
    MergeRequest.where(target_project: projects)
  end
end