2021-06-01 12:20:20 +00:00
|
|
|
# Copyright (C) 2012-2021 Zammad Foundation, http://zammad-foundation.org/
|
|
|
|
|
2017-11-29 16:54:52 +00:00
|
|
|
class Sequencer
|
|
|
|
class Unit
|
|
|
|
module Import
|
|
|
|
module Ldap
|
|
|
|
module Users
|
|
|
|
module Lost
|
|
|
|
class Deactivate < Sequencer::Unit::Base
|
|
|
|
uses :dry_run, :lost_ids
|
|
|
|
|
|
|
|
def process
|
|
|
|
return if dry_run
|
|
|
|
|
2018-07-19 10:25:20 +00:00
|
|
|
# Why not use `#update_all`?
|
|
|
|
# It bypasses validations/callbacks
|
|
|
|
# (which are used to send notifications to the client)
|
|
|
|
::User.where(id: lost_ids).find_each do |user|
|
|
|
|
user.update!(active: false, updated_by_id: 1)
|
2017-11-29 16:54:52 +00:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|