From 8c30cb40464e46d30545bf8287424fe14c095a5f Mon Sep 17 00:00:00 2001 From: "karel.picman@lbcfree.net" Date: Mon, 31 May 2021 10:33:31 +0200 Subject: [PATCH] Cannot unlock files --- lib/redmine_dmsf/lockable.rb | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/lib/redmine_dmsf/lockable.rb b/lib/redmine_dmsf/lockable.rb index 4474f435..82b00885 100644 --- a/lib/redmine_dmsf/lockable.rb +++ b/lib/redmine_dmsf/lockable.rb @@ -56,8 +56,7 @@ module RedmineDmsf raise DmsfLockError.new(l(:error_parent_locked)) else existing.each do |l| - #if l.user.id == User.current.id - if (l.user.id == User.current.id) && (owner.nil? || (owner == l.owner)) + if (l.user.id == User.current.id) && (owner.nil? || (owner.downcase == l.owner&.downcase)) raise DmsfLockError.new(l(:error_resource_locked)) end end @@ -99,10 +98,10 @@ module RedmineDmsf owner = args[:owner] if args owner ||= User.current&.login if lock.owner if lock.lock_scope == :scope_exclusive - return true if (lock.user&.id != User.current.id) || (lock.owner != owner) + return true if (lock.user&.id != User.current.id) || (lock.owner&.downcase != owner&.downcase) else shared = true if shared.nil? - if shared && (lock.user&.id == User.current.id) && (lock.owner == owner) || + if shared && (lock.user&.id == User.current.id) && (lock.owner&.downcase == owner&.downcase) || (args && (args[:scope] == 'shared')) shared = false end @@ -132,7 +131,7 @@ module RedmineDmsf else existing.each do |lock| owner = User.current&.login if lock.owner && owner.nil? - if ((lock.user&.id == User.current.id) && (lock.owner == owner)) || User.current.admin? + if ((lock.user&.id == User.current.id) && (lock.owner&.downcase == owner&.downcase)) || User.current.admin? lock.destroy destroyed = true break