Merge pull request #8802 from andrej-scinote/aj_SCI_12254

Fix the returning repositories list [SCI-12254][12263]
This commit is contained in:
Martin Artnik 2025-08-14 15:31:43 +02:00 committed by GitHub
commit 745a0bcfe2
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 9 additions and 3 deletions

View file

@ -12,7 +12,7 @@ class RepositoriesController < ApplicationController
before_action :switch_team_with_param, only: %i(index)
before_action :load_repository, except: %i(index create create_modal archive restore actions_toolbar
export_repositories list)
before_action :load_repositories, only: %i(index list actions_toolbar)
before_action :load_repositories, only: %i(index actions_toolbar)
before_action :load_repositories_for_archiving, only: :archive
before_action :load_repositories_for_restoring, only: :restore
before_action :check_view_permissions, except: %i(index create_modal create update destroy parse_sheet
@ -44,7 +44,8 @@ class RepositoriesController < ApplicationController
end
def list
results = @repositories.select(:id, :name, 'LOWER(repositories.name)')
repositories = params[:manageable] == 'true' ? Repository.managable_by_user(current_user, current_team) : Repository.readable_by_user(current_user, current_team)
results = repositories.select(:id, :name, 'LOWER(repositories.name)')
results = results.name_like(params[:query]) if params[:query].present?
results = results.joins(:repository_rows).distinct if params[:non_empty].present?
results = results.active if params[:active].present?

View file

@ -33,6 +33,7 @@
<div class="modal-body flex flex-col gap-6" :class="{ '!pb-3': notification }">
<RepositoryRowSelector
:multiple="true"
:manageableRepositoriesOnly="true"
@change="selectedItemValues = $event"
@repositoryChange="changeSelectedInventory"
/>

View file

@ -79,6 +79,10 @@ export default {
excludeRows: {
type: Array,
default: () => []
},
manageableRepositoriesOnly: {
type: Boolean,
default: false
}
},
created() {
@ -116,7 +120,7 @@ export default {
},
computed: {
repositoriesUrl() {
return list_team_repositories_path(this.teamId, { non_empty: true, active: true });
return list_team_repositories_path(this.teamId, { non_empty: true, active: true, manageable: this.manageableRepositoriesOnly });
},
rowsUrl() {
if (!this.selectedRepository) {