1# frozen_string_literal: true
2
3class ForkNetwork < ApplicationRecord
4  belongs_to :root_project, class_name: 'Project'
5  has_many :fork_network_members
6  has_many :projects, through: :fork_network_members
7
8  after_create :add_root_as_member, if: :root_project
9
10  def add_root_as_member
11    projects << root_project
12  end
13
14  def find_forks_in(other_projects)
15    projects.where(id: other_projects)
16  end
17
18  def merge_requests
19    MergeRequest.where(target_project: projects)
20  end
21end
22