diff options
author | Sean McGivern <sean@mcgivern.me.uk> | 2016-11-23 12:23:08 +0000 |
---|---|---|
committer | Sean McGivern <sean@mcgivern.me.uk> | 2016-11-23 12:23:08 +0000 |
commit | ba0d4877934349603e24125864c3a46eba271e0e (patch) | |
tree | 3debde710f9d85bc978001c245260ec826c0fe82 /app/models/namespace.rb | |
parent | 6f7ce372921a322c48e659d8382a04895fd29b1f (diff) | |
parent | 2ea5ef0ba4ee00b5551b88a6b9a68e045bf4b3f4 (diff) | |
download | gitlab-ce-ba0d4877934349603e24125864c3a46eba271e0e.tar.gz |
Merge branch 'fix/drop-project-authorized-for-user' into 'master'
Use authorized projects in ProjectTeam
Closes #23938 and #23636
See merge request !7586
Diffstat (limited to 'app/models/namespace.rb')
-rw-r--r-- | app/models/namespace.rb | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/app/models/namespace.rb b/app/models/namespace.rb index b67049f0f55..99da26a89fb 100644 --- a/app/models/namespace.rb +++ b/app/models/namespace.rb @@ -27,6 +27,7 @@ class Namespace < ActiveRecord::Base delegate :name, to: :owner, allow_nil: true, prefix: true after_update :move_dir, if: :path_changed? + after_commit :refresh_access_of_projects_invited_groups, on: :update, if: -> { previous_changes.key?('share_with_group_lock') } # Save the storage paths before the projects are destroyed to use them on after destroy before_destroy(prepend: true) { @old_repository_storage_paths = repository_storage_paths } @@ -175,4 +176,11 @@ class Namespace < ActiveRecord::Base end end end + + def refresh_access_of_projects_invited_groups + Group. + joins(project_group_links: :project). + where(projects: { namespace_id: id }). + find_each(&:refresh_members_authorized_projects) + end end |