danmunn / redmine_dmsf

Fork of svn repository for redmine_dmsf
GNU General Public License v2.0
413 stars 193 forks source link

Allow access only to xxx group , access Internal error 500 #1499

Closed ritech closed 6 months ago

ritech commented 6 months ago

When I give a specific user group access to the newly created folder through the administrator, I log in as a user of the specific user group and access this folder, and an Internal error is prompted.

ritech commented 6 months ago

my redmine version 5.1.1

ritech commented 6 months ago

[2023-12-24T14:17:34.264179 #16923] INFO -- : [b8befdae-b623-4235-bee5-a74528a374a4] Started GET "/projects/test/dmsf" for 192.168.1.2 at 2023-12-24 14:17:34 +0000 I, [2023-12-24T14:17:34.266085 #16923] INFO -- : [b8befdae-b623-4235-bee5-a74528a374a4] Processing by DmsfController#show as HTML I, [2023-12-24T14:17:34.266263 #16923] INFO -- : [b8befdae-b623-4235-bee5-a74528a374a4] Parameters: {"id"=>"test"} I, [2023-12-24T14:17:34.275316 #16923] INFO -- : [b8befdae-b623-4235-bee5-a74528a374a4] Current user: test (id=5) I, [2023-12-24T14:17:34.379967 #16923] INFO -- : [b8befdae-b623-4235-bee5-a74528a374a4] Completed 500 Internal Server Error in 113ms (ActiveRecord: 27.1ms | Allocations: 16115) F, [2023-12-24T14:17:34.381373 #16923] FATAL -- : [b8befdae-b623-4235-bee5-a74528a374a4]

Did you mean? intersection): [b8befdae-b623-4235-bee5-a74528a374a4] [b8befdae-b623-4235-bee5-a74528a374a4] plugins/redmine_dmsf/app/models/dmsf_folder.rb:129:in permissions?' [b8befdae-b623-4235-bee5-a74528a374a4] plugins/redmine_dmsf/app/models/dmsf_query.rb:216:inblock in dmsf_nodes' [b8befdae-b623-4235-bee5-a74528a374a4] plugins/redmine_dmsf/app/models/dmsf_query.rb:209:in delete_if' [b8befdae-b623-4235-bee5-a74528a374a4] plugins/redmine_dmsf/app/models/dmsf_query.rb:209:indmsf_nodes' [b8befdae-b623-4235-bee5-a74528a374a4] plugins/redmine_dmsf/app/models/dmsf_query.rb:102:in dmsf_count' [b8befdae-b623-4235-bee5-a74528a374a4] plugins/redmine_dmsf/app/controllers/dmsf_controller.rb:94:inblock (2 levels) in show' [b8befdae-b623-4235-bee5-a74528a374a4] plugins/redmine_dmsf/app/controllers/dmsf_controller.rb:92:in show' [b8befdae-b623-4235-bee5-a74528a374a4] lib/redmine/sudo_mode.rb:61:insudo_mode'

ritech commented 6 months ago

i have update gem bundle to new version , log changed I, [2023-12-24T19:17:59.267828 #1105] INFO -- : [54bfb65c-88c4-4129-b53d-8815d7d7e20a] Current user: admin (id=1) D, [2023-12-24T19:17:59.269966 #1105] DEBUG -- : [54bfb65c-88c4-4129-b53d-8815d7d7e20a] Project Load (0.6ms) SELECT projects. FROM projects WHERE projects.identifier = 'test' LIMIT 1 D, [2023-12-24T19:17:59.272690 #1105] DEBUG -- : [54bfb65c-88c4-4129-b53d-8815d7d7e20a] EnabledModule Pluck (0.6ms) SELECT enabled_modules.name FROM enabled_modules WHERE enabled_modules.project_id = 1 D, [2023-12-24T19:17:59.275975 #1105] DEBUG -- : [54bfb65c-88c4-4129-b53d-8815d7d7e20a] DmsfFolder Load (0.6ms) SELECT dmsf_folders. FROM dmsf_folders WHERE dmsf_folders.id = 1 LIMIT 1 D, [2023-12-24T19:17:59.278109 #1105] DEBUG -- : [54bfb65c-88c4-4129-b53d-8815d7d7e20a] Project Load (0.6ms) SELECT projects.* FROM projects WHERE projects.id = 1 LIMIT 1 D, [2023-12-24T19:17:59.281897 #1105] DEBUG -- : [54bfb65c-88c4-4129-b53d-8815d7d7e20a] DmsfFolderPermission Delete All (0.5ms) DELETE FROM dmsf_folder_permissions WHERE dmsf_folder_permissions.dmsf_folder_id = 1 I, [2023-12-24T19:17:59.287388 #1105] INFO -- : [54bfb65c-88c4-4129-b53d-8815d7d7e20a] Completed 500 Internal Server Error in 30ms (ActiveRecord: 5.3ms | Allocations: 4423) F, [2023-12-24T19:17:59.290395 #1105] FATAL -- : [54bfb65c-88c4-4129-b53d-8815d7d7e20a] [54bfb65c-88c4-4129-b53d-8815d7d7e20a] ActiveRecord::DangerousAttributeError (object_id is defined by Active Record. Check to make sure that you don't have an attribute or method with the same name.): [54bfb65c-88c4-4129-b53d-8815d7d7e20a] [54bfb65c-88c4-4129-b53d-8815d7d7e20a] plugins/redmine_dmsf/app/models/dmsf_folder.rb:500:in block in update_from_params' [54bfb65c-88c4-4129-b53d-8815d7d7e20a] plugins/redmine_dmsf/app/models/dmsf_folder.rb:499:ineach' [54bfb65c-88c4-4129-b53d-8815d7d7e20a] plugins/redmine_dmsf/app/models/dmsf_folder.rb:499:in update_from_params' [54bfb65c-88c4-4129-b53d-8815d7d7e20a] plugins/redmine_dmsf/app/controllers/dmsf_controller.rb:263:insave' [54bfb65c-88c4-4129-b53d-8815d7d7e20a] lib/redmine/sudo_mode.rb:78:in `sudo_mode'

ritech commented 6 months ago

127c127,128 return true if role_ids.intersect?(role_permission_ids)

return true if (role_ids & role_permission_ids).blank?

133c134,135 principal_ids.intersect?(user_group_ids)

(principal_ids & user_group_ids).blank?

ritech commented 6 months ago

fix