Commit 3a131383 authored by James Lopez's avatar James Lopez

fixed MR issue and refactored some stuff

parent 76efdea7
...@@ -125,7 +125,7 @@ class MergeRequest < ActiveRecord::Base ...@@ -125,7 +125,7 @@ class MergeRequest < ActiveRecord::Base
end end
end end
validates :source_project, presence: true, unless: :allow_broken validates :source_project, presence: true, unless: [:allow_broken, :importing]
validates :source_branch, presence: true validates :source_branch, presence: true
validates :target_project, presence: true validates :target_project, presence: true
validates :target_branch, presence: true validates :target_branch, presence: true
......
...@@ -13,12 +13,6 @@ module Projects ...@@ -13,12 +13,6 @@ module Projects
end end
def map def map
@project_member_map ||= project_member_map
end
private
def project_member_map
@project_member_map = Hash.new(default_project_member) @project_member_map = Hash.new(default_project_member)
@exported_members.each do |member| @exported_members.each do |member|
existing_user = User.where(find_project_user_query(member)).first existing_user = User.where(find_project_user_query(member)).first
...@@ -27,6 +21,8 @@ module Projects ...@@ -27,6 +21,8 @@ module Projects
@project_member_map @project_member_map
end end
private
def assign_member(existing_user, member) def assign_member(existing_user, member)
old_user_id = member['user']['id'] old_user_id = member['user']['id']
member['user'] = existing_user member['user'] = existing_user
......
...@@ -10,18 +10,19 @@ module Projects ...@@ -10,18 +10,19 @@ module Projects
relation_sym = parse_relation_sym(relation_sym) relation_sym = parse_relation_sym(relation_sym)
klass = relation_class(relation_sym) klass = relation_class(relation_sym)
relation_hash.delete('id') #screw IDs for now relation_hash.delete('id') #screw IDs for now
#TODO refactor this... handle_merge_requests(relation_hash) if relation_sym == :merge_requests
if relation_sym == :merge_requests
relation_hash['target_project_id'] = relation_hash.delete('project_id')
relation_hash['source_project_id'] = -1
relation_hash['importing'] = true
end
update_user_references(relation_hash, members_map) update_user_references(relation_hash, members_map)
klass.new(relation_hash) klass.new(relation_hash)
end end
private private
def handle_merge_requests(relation_hash)
relation_hash['target_project_id'] = relation_hash.delete('project_id')
relation_hash['source_project_id'] = -1
relation_hash['importing'] = true
end
#TODO nice to have, optimize this to only get called for specific models #TODO nice to have, optimize this to only get called for specific models
def update_user_references(relation_hash, members_map) def update_user_references(relation_hash, members_map)
USER_REFERENCES.each do |reference| USER_REFERENCES.each do |reference|
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment