1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2025-02-19 13:54:25 +01:00

(bug) invalid users are reported in search

This commit is contained in:
Sylvain 2022-06-29 13:39:41 +02:00
parent c50ebd538e
commit bcbd3bfb58
12 changed files with 29 additions and 7 deletions

View File

@ -4,6 +4,7 @@
- My reservations dashboard
- Fix a bug: unable to reserve a space
- Fix a bug: invalid users are reported in search
- Added a test case for space reservation
## v5.4.7 2022 June 29

View File

@ -180,7 +180,7 @@ class API::MembersController < API::ApiController
end
def search
@members = Members::ListService.search(current_user, params[:query], params[:subscription], params[:project])
@members = Members::ListService.search(current_user, params[:query], params[:subscription], params[:include_admins])
end
def mapping

View File

@ -231,7 +231,7 @@ class ProjectsController {
const asciiName = Diacritics.remove(nameLookup);
Member.search(
{ query: asciiName, project: 'true' },
{ query: asciiName, include_admins: 'true' },
function (users) { $scope.matchingMembers = users; },
function (error) { console.error(error); }
);

View File

@ -40,7 +40,7 @@ class Members::ListService
@query
end
def search(current_user, query, subscription, project)
def search(current_user, query, subscription, include_admins = 'false')
members = User.includes(:profile)
.joins(:profile,
:statistic_profile,
@ -69,11 +69,9 @@ class Members::ListService
members = members.where('subscriptions.id IS NULL OR subscriptions.expiration_date < :now', now: Date.today.to_s)
end
if project == 'false' || project.blank?
members = members.where("roles.name = 'member' OR roles.name = 'manager'")
end
members = members.where("roles.name = 'member' OR roles.name = 'manager'") if include_admins == 'false' || include_admins.blank?
members.to_a
members.to_a.filter(&:valid?)
end
private

View File

@ -0,0 +1,8 @@
# frozen_string_literal: true
json.array!(@credits) do |credit|
json.partial! 'api/credits/credits', credit: credit
json.used_credits credit.users_credits do |uc|
json.extract! uc, :id, :created_at, :hours_used
end
end

View File

@ -0,0 +1,15 @@
require 'minitest/autorun'
class UserInfoTest < Minitest::Test
def setup
# Do nothing
end
def teardown
# Do nothing
end
def test
skip 'Not implemented'
end
end